Funções


Com base no código abaixo peça o chatgpt para.


Para isto copie e cole o texto e o código no prompt do chatgpt.


Sou iniciante em programação, aprendi sobre variavéis, comandos de entrada e saída e estrutras de decisão, me explique o conceito de funções em java. Explique como é a sintaxe e execução de funções criadas pelo próprio usuário. Quais funções de usuário poderiam ser criadas no código abaixo para otimizar o algoritmo e tirar proveito dos conceitos de funções.


import java.util.Scanner;
import java.lang.Math;

public class App {
    public static void main(String[] args) {
        Scanner teclado = new Scanner(System.in);
        double area;

        String mensagem = "";

        int opcao = 0;

        exibirMenu();  // chamada do bloco de código exibirMenu que está definido ao fim deste código

        try {
            System.out.print("Digite o número da opção desejada: ");
            opcao = teclado.nextInt();

            switch (opcao) {
                case 1:
                    double raio;

                    try {
                        System.out.print("Digite o valor do raio da circunferencia em metros: ");
                        raio = teclado.nextDouble();

                        area =  3.14159 * raio * raio;
                        mensagem = "Área do círculo: " +  Math.round(area)   ;

                    } catch (Exception e) {
                        System.out.println("Valor inválido para o raio.");
                    }
                        
                    break;
                case 2:
                    double largura, altura;
                    
                    System.out.print("Digite a largura do retangulo: ");
                    largura = teclado.nextDouble();
                    System.out.print("Digite a altura do retangulo: ");
                    altura = teclado.nextDouble();

                    area = largura * altura;
                    
                    mensagem = "Área do retângulo: " + area + " metros";
                    break;
                case 3:
                    double base;
                    
                    System.out.print("Digite a base do triângulo: ");
                    base = teclado.nextDouble();
                    System.out.print("Digite a altura do triângulo: ");
                    altura = teclado.nextDouble();

                    area = (base * altura) / 2;
                    
                    mensagem = "Área do triângulo: " + area + " metros";
                    break;
                default:
                    System.out.println("Opção inválida.");
                    break;
            }
        } catch (Exception e) {
            System.out.println("Opção inválida.");
        }


        System.out.println(mensagem);
        teclado.close();
    }

    static void exibirMenu(){ //inicio do bloco de código exibirMenu
        System.out.println("== Sistema para cálculo da área de figuras geométricas ==\n");
        System.out.println("1 - Círculo");
        System.out.println("2 - Retângulo");
        System.out.println("3 - Triângulo\n");
    } //fim do bloco de código exibirMenu
}